/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package com.escom.healthlc.business;

import com.escom.healthlc.entidad.ArritmiaVO;
import com.escom.healthlc.imapperdao.IArritmiaMapper;
import com.escom.healthlc.utils.Constantes;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataAccessException;
import org.springframework.stereotype.Service;

/**
 *
 * @author LAURA
 */
@Service("ArritmiaBusiness")
public class ArritmiaBusiness extends InformationBusiness{
    private final static Logger logger = LoggerFactory.getLogger(ParentescoBusiness.class);

    @Autowired
    private IArritmiaMapper arritmiaMapper;

    public void crearArritmia(ArritmiaVO arritmia) {
        setMessageEstado(null);
        try {
             arritmiaMapper.createArritmia(arritmia);
        } catch (DataAccessException e) {
            logger.error("Error Logger: {}", e.getCause().getMessage());
            logger.error("Error Logger: {}", e.fillInStackTrace().toString());
            setMessageEstado(Constantes.ERROR_CONSULTA);
            setEstado(Constantes.ERROR_BASE_DATOS);
        }
        if (getMessageEstado() == null) {
            setMessageEstado(Constantes.EXITO_CREAR);
            setEstado(Constantes.SIN_ERROR);
        }

    }

    public List<ArritmiaVO> obtenerArritmia() {
        List<ArritmiaVO> retrieveListArritmia = null;
        try {
            retrieveListArritmia = arritmiaMapper.retrieveListArritmia();
        } catch (DataAccessException e) {
            logger.error("Error Logger: {}", e.getCause().getMessage());
            logger.error("Error Logger: {}", e.fillInStackTrace().toString());
            setMessageEstado(Constantes.ERROR_CONSULTA);
            setEstado(Constantes.ERROR_BASE_DATOS);
        }
        if (getMessageEstado() == null) {
            setMessageEstado(Constantes.EXITO_CONSULTA);
            setEstado(Constantes.SIN_ERROR);
        }
        return retrieveListArritmia;
    }

    public void actualizarArritmia(ArritmiaVO arritmia) {
        try {
            arritmiaMapper.updateArritmia(arritmia);
        } catch (DataAccessException e) {
            logger.error("Error Logger: {}", e.getCause().getMessage());
            logger.error("Error Logger: {}", e.fillInStackTrace().toString());
            setMessageEstado(Constantes.ERROR_ACTUALIZAR);
            setEstado(Constantes.ERROR_BASE_DATOS);
        }
        if (getMessageEstado() == null) {
            setMessageEstado(Constantes.EXITO_ACTUALIZAR);
            setEstado(Constantes.SIN_ERROR);
        }

    }

    public void eliminarArritmia(ArritmiaVO arritmia) {
        try {
            arritmiaMapper.deleteArritmia(arritmia);
        } catch (DataAccessException e) {
            logger.error("Error Logger: {}", e.getCause().getMessage());
            logger.error("Error Logger: {}", e.fillInStackTrace().toString());
            setMessageEstado(Constantes.ERROR_ELIMINAR);
            setEstado(Constantes.ERROR_BASE_DATOS);
        }
        if (getMessageEstado() == null) {
            setMessageEstado(Constantes.EXITO_ELIMINAR);
            setEstado(Constantes.SIN_ERROR);
        }

    }
    
    
}
